A Web Query is a range of cells, or tabular data, within a spreadsheet program, such as the MICROSOFT EXCEL spreadsheet program, whose content is derived from a Web page. The content of the Web Query has the same properties as the tabular data stored on the associated Web page. For example, if the tabular data displayed on the Web page is formatted as two decimal real numbers, the content within the Web Query will also be formatted as two-decimal real numbers. Once the content from the HTML document is imported into the spreadsheet program as a Web Query, the user may update the content of the tabular data by selecting a predefined command. These features make the Web Query a very powerful tool for creating a table whose content may be refreshed either manually or upon the occurrence of a specified event. Unfortunately, in previous versions of the MICROSOFT EXCEL spreadsheet program, the method for creating a Web Query was cumbersome and complicated. Typically, the user had to manually create a text file, known as an Internet Query (“IQY”) file that contain specific structures and information. IQY files are text files that contain specific structure that instruct the MICROSOFT EXCEL spreadsheet program how to create a Web Query. Typically, the IQY file contains information such as the Uniform Resource Locator (“URL) and other properties that control how the data is imported and formatted. Creating an IQY file, however, requires the user to have specific information about the structure of the HTML document and data objects, such as the object identification number, for the data objects that they wan to import into the Web Query. As a result, creating an IQY file requires that the user have some level of programming skill. Consequently, many users found the Web Query feature too complicated to use.
One solution to this problem, which was introduced in the “MICROSOFT EXCEL 2000” spreadsheet program manufactured by the Microsoft Corporation of Redmond, Washington, was the creation of a dialog box to help the user create a Web Query. The dialog box allowed the user to import tabular data from a Web page without having to manually generate an IQY file. To create a Web Query using the dialog box, the user typed in the address of a remote location where the data was stored, such as a uniform resource locator (“URL”) of the Web page that contained the tabular data or an HTML file stored on the local network. Once the user identified the location of the data, the user was required to import the data in one of three ways. First, the user could simply import the entire Web page or HTML file. Second, the user could import all instances of tabular data contained in the HTML file. Finally, the user could import specific instances of tabular data. Although importing the entire Web page or all instances of tabular data are the easiest methods for importing tabular data, these methods produce results that the user do not want. This is due to the fact that Web pages typically contain superfluous information, such as graphics, banners, ads, and the like, that users are not interested in. Therefore, the method of importing specific instances of tabular data is the most common method chosen by users. However, selecting specific instances of tabular data to import into the MICROSOFT EXCEL spreadsheet program required the user to supply an HTML identifier associated with the tabular data. The HTML identifier is typically a table identification string or an index number that provides the relative position of the tabular data within the HTML document. For example, if the tabular data was a TABLE object, it would have the following format in the HTML document: <TABLE ID=“identification string”>. . . data . . . </TABLE>. The user had to manually determine the identification string. The user had to determine the identification string by looking at the source of the HTML. However, sometimes, the identification string may not be provided. Therefore, in these instances, the user had to determine the index number, which is simply the ordinal number of the TABLE object, as it appeared in the HTML document. Once the user finished supplying this data, a Web Query was created whose content was imported from the URL or HTML file specified by the user. Although the use of the dialog box eliminated the need for user to manually generate an IQY file, the user still had to have intimate knowledge of the structure of the Web page to create a Web Query. Because the average user does not have the requisite knowledge about HTML file structure to effectively create a Web Query, the average user simply found it too difficult and many times too frustrating to create a Web Query to specific instances of tabular data. Typically, users created a Web Query to the entire HTML page and returned the all the data to a new blank worksheet dedicated solely to the Web Query. The users would then create worksheet links from the data they wanted to perform analysis on to the Web Query worksheet. This lead to numerous errors because when the Web Query was refreshed, the location of the data on the Web page may have changed. For example, suppose the user wanted to create a Web Query to an entire page that contained financial data and they discovered that the particular stock quote that they are interested in was contained in cell D9. The user would then create a link between cell D9 on the Web Query sheet to another worksheet where they performed their analysis. When the user would refresh the Web Query, however, the Web page may have changed by the addition of a new banner ad or the like, so that the stock price quote was now stored in cell G11 in the Web Query sheet. The financial analysis would then return a result that is different than what the user expected because the analysis is linked to cell D9, which contained incorrect data after the Web Query was refreshed.
Furthermore, creating a Web Query is not the most intuitive process and therefore, can be difficult for the average person. To create a Web Query, the user had to open a Web Query dialog box from within the MICROSOFT EXCEL spreadsheet program and then manually input the URL of the Web site that contains the tabular data they wished to insert into their spreadsheet program. Unfortunately, most users did not even realize that they could access tabular data in an HTML document from the spreadsheet program. Rather, most users typically exited the spreadsheet program and accessed the HTML document or Web page through an Internet browser, such as Microsoft's INTERNET EXPLORER browser program. Users could then select the tabular data in the Web page and invoke the Copy-Paste command to transfer the tabular data from Web page to the MICROSOFT EXCEL spreadsheet program. This required the user to switch between the Web browser program and the MICROSOFT EXCEL spreadsheet program to paste the data into a range of cells in the worksheet.
For example, suppose a user wanted to download stock information from an Internet site into a MICROSOFT EXCEL worksheet to perform financial analyses. Typically, a user would create a new MICROSOFT EXCEL worksheet and would then open a new active window with a Web browser program. Next, the user would load the Web site that contained the desired stock information. The user would then select a table or tabular data of stock information and invoke the Copy command. Next, the user would be required to switch to the window containing the MICROSOFT EXCEL spreadsheet program, select a position in the worksheet to insert the data and invoke the Paste command. If the content within the imported table were static, the Copy-Paste method of importing tabular data would be complete. However, stock information is typically dynamic in nature and continually changes. Therefore, for the user to update their tabular data, the user had to continually invoke the Copy-Paste method to import the new data.
Unfortunately, the Copy-Paste method to import tabular data is inefficient and time consuming. When the user wants to refresh, or update the tabular data, they must repeat the Copy-and-Paste process all over. Furthermore, using the Copy-Paste method for continually updating tabular data can lead to errors being introduced into the data. For example, the user may select the wrong table in the Web page to update, or in the case where a range of the tabular data is imported, the user may inadvertently select a different size range when updating the data. In either instance, selecting data to update that is different from the data initially selected can lead to numerous errors in the user's analysis. Creating a refreshable Web Query in these instances would eliminate the repetition of using the Copy-Paste method to update the tabular data and reduce the occurrence of errors committed by the user. Moreover, most users are unaware that the Web Query feature exists or how to access it. For those users who are aware of the Web Query feature, the process of creating a Web Query is too complicated for them to use the feature with any regularity.
Thus, there is a general need in the art for a more convenient and “discoverable” method for creating a refreshable Web Query. There is a further need in the art for a more convenient and efficient method for a user to discover the option to create refreshable Web queries. There is a still a further need in the art for a more efficient, integrated, and logical method of creating a refreshable Web Query in the MICROSOFT EXCEL spreadsheet program directly from an Web browser program.